<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<title>hello</title>
</head>
<body>
	<!-- 准备好容器 -->
	<div id="test"></div>

	<!-- 引入react核心库 -->
	<script src="../lib/react.development.js"></script>
	<!-- 引入react-dom，用于支持react操作dom -->
	<script src="../lib/react-dom.development.js"></script>
	<!-- 引入babel，用于将jsx转为js -->
	<script src="../lib/babel.min.js"></script>

	<script type="text/babel">
		// 1.创建类式组件，类式组件必须继承React.Component
    // 适用于复杂组件。简单组件-没有状态state的组件。复杂组件-有状态state的组件。
    class MyComponent extends React.Component {
      render() {
        // render是放在哪里的?- 类的原型对象上，供实例使用。
        // render中的this是谁?-MyComponent的实例对象。MyComponent组件实例对象。
        console.log(this);
        return (
          <div>
            <h1>类式组件</h1>
            <p>这是一个类式组件</p>
          </div>
        )
      }
    }

		// 2.渲染虚拟DOM到页面
		ReactDOM.render(<MyComponent/>, document.getElementById('test'));
    /*
      执行ReactDOM.render之后，发生了什么？
      1.React解析组件标签，找到了MyComponent组件。
      2.发现组件是使用类定义的，随后new出来该类的实例，并通过该实例调用到原型上的render方法。
      3.将render返回的虚拟DOM转为真实DOM，随后呈现在页面中，
    */

	</script>
</body>
</html>